package com.indexingsystem.db.mongoDB.po;

import java.io.Serializable;
import java.util.Date;

import com.alibaba.fastjson.annotation.JSONField;

/**
 * 资源分类中资源列表mongo实体对象.
 * 
 * @author Administrator
 * 
 */
public class ResourceCategorsResPo implements Serializable {
	/**
	 * 
	 */
	private static final long	serialVersionUID	= -4821144294834508092L;

	@JSONField(name = "_id", serialize = true, deserialize = true)
	private String				id;

	@JSONField(name = "date_px", serialize = true, deserialize = true)
	private Date				datePx;

	@JSONField(name = "res_id", serialize = true, deserialize = true)
	private String				resId;

	@JSONField(name = "res_name", serialize = true, deserialize = true)
	private String				resName;

	@JSONField(name = "publish_date", serialize = true, deserialize = true)
	private String				publishDate;

	@JSONField(name = "thumbnail", serialize = true, deserialize = true)
	private String				thumbnail;

	@JSONField(name = "res_type", serialize = true, deserialize = true)
	private Integer				resType;

	@JSONField(name = "res_type_id", serialize = true, deserialize = true)
	private String				resTypeId;

	@JSONField(name = "res_category_id", serialize = true, deserialize = true)
	private String				resCategoryId;

	@JSONField(name = "res_category_name", serialize = true, deserialize = true)
	private String				resCategoryName;

	@JSONField(name = "period_of_time", serialize = true, deserialize = true)
	private int					periodOfTime;

	@JSONField(name = "res_table", serialize = true, deserialize = true)
	private String				resTable;

	@JSONField(name = "status", serialize = true, deserialize = true)
	private Integer				status;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public Date getDatePx() {
		return datePx;
	}

	public void setDatePx(Date datePx) {
		this.datePx = datePx;
	}

	public String getResId() {
		return resId;
	}

	public void setResId(String resId) {
		this.resId = resId;
	}

	public String getResName() {
		return resName;
	}

	public void setResName(String resName) {
		this.resName = resName;
	}

	public String getPublishDate() {
		return publishDate;
	}

	public void setPublishDate(String publishDate) {
		this.publishDate = publishDate;
	}

	public String getThumbnail() {
		return thumbnail;
	}

	public void setThumbnail(String thumbnail) {
		this.thumbnail = thumbnail;
	}

	public Integer getResType() {
		return resType;
	}

	public void setResType(Integer resType) {
		this.resType = resType;
	}

	public String getResTypeId() {
		return resTypeId;
	}

	public void setResTypeId(String resTypeId) {
		this.resTypeId = resTypeId;
	}

	public String getResCategoryId() {
		return resCategoryId;
	}

	public void setResCategoryId(String resCategoryId) {
		this.resCategoryId = resCategoryId;
	}

	public String getResCategoryName() {
		return resCategoryName;
	}

	public void setResCategoryName(String resCategoryName) {
		this.resCategoryName = resCategoryName;
	}

	public int getPeriodOfTime() {
		return periodOfTime;
	}

	public void setPeriodOfTime(int periodOfTime) {
		this.periodOfTime = periodOfTime;
	}

	public String getResTable() {
		return resTable;
	}

	public void setResTable(String resTable) {
		this.resTable = resTable;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public ResourceCategorsResPo() {
		super();
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((resCategoryId == null) ? 0 : resCategoryId.hashCode());
		result = prime * result + ((resCategoryName == null) ? 0 : resCategoryName.hashCode());
		result = prime * result + ((resId == null) ? 0 : resId.hashCode());
		result = prime * result + ((resName == null) ? 0 : resName.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		ResourceCategorsResPo other = (ResourceCategorsResPo) obj;
		if (resCategoryId == null) {
			if (other.resCategoryId != null)
				return false;
		} else if (!resCategoryId.equals( other.resCategoryId ))
			return false;
		if (resCategoryName == null) {
			if (other.resCategoryName != null)
				return false;
		} else if (!resCategoryName.equals( other.resCategoryName ))
			return false;
		if (resId == null) {
			if (other.resId != null)
				return false;
		} else if (!resId.equals( other.resId ))
			return false;
		if (resName == null) {
			if (other.resName != null)
				return false;
		} else if (!resName.equals( other.resName ))
			return false;
		return true;
	}

	public ResourceCategorsResPo(String id, Date datePx, String resId, String resName, String publishDate, String thumbnail, Integer resType,
			String resTypeId, String resCategoryId, String resCategoryName, int periodOfTime, String resTable, Integer status) {
		super();
		this.id = id;
		this.datePx = datePx;
		this.resId = resId;
		this.resName = resName;
		this.publishDate = publishDate;
		this.thumbnail = thumbnail;
		this.resType = resType;
		this.resTypeId = resTypeId;
		this.resCategoryId = resCategoryId;
		this.resCategoryName = resCategoryName;
		this.periodOfTime = periodOfTime;
		this.resTable = resTable;
		this.status = status;
	}

	@Override
	public String toString() {
		return "ResourceCategorsResPo [id=" + id + ", datePx=" + datePx + ", resId=" + resId + ", resName=" + resName + ", publishDate="
				+ publishDate + ", thumbnail=" + thumbnail + ", resType=" + resType + ", resTypeId=" + resTypeId + ", resCategoryId=" + resCategoryId
				+ ", resCategoryName=" + resCategoryName + ", periodOfTime=" + periodOfTime + ", resTable=" + resTable + ", status=" + status + "]";
	}
}